Computer software programs or applications are often developed to solve a particular set of problems within a predetermined environment. However, new kinds of problems and changes in the predetermined environment often require modifications or updates of the computer software programs or applications. When complex software programs or applications are involved, the changes or updates often take a long time and a large amount of effort to complete. Software models may be used to accommodate these changes or updates and to reduce the amount of effort or time to complete the changes or updates. For example, U.S. Patent Application Publication No. 2005/0066338 to Bloesch et al. on Mar. 24, 2005, discloses an application programming interface and framework that supports a meta-object model for application design and operating system interactions. However, such operating system interaction techniques are often ineffective when dealing with large sale network computing applications.
Among network based software applications, enterprise service software applications may be developed for an enterprise environment with stable connections, high bandwidth, and business oriented applications. The enterprise service software are often implemented in a transactional and/or stateful manner, and may also implemented with a fine granularity in term of functionalities. On the other hand, general web service software applications may be developed for regular Internet-based applications in a network computing environment where different computers and different network connections are interconnected and the status of the environment may often be unpredictable. Thus, the general web service software is often implemented in a non-transactional and/or stateless manner, and may also be implemented with a significantly large granularity in terms of functionalities.
Because the above differences, enterprise service software applications and web service software applications are often not compatible with each other. That is, enterprise services and web services cannot be accessed by a single software framework without significant changes to the enterprise service software applications and/or the web service software applications. Conventional attempts to access both enterprise services and web services may often use extra adaptation layers and extra out-of-band data (e.g., cookies, etc.) that need to be handled by a specific service.
However, such extra software components used by the conventional techniques often require significant amount of software implementations before a new service may be provided. In certain circumstances, it may be undesirable or impractical to create such software implementations before providing a new service or services.
Methods and systems consistent with certain features of the disclosed embodiments are directed to solving one or more of the problems set forth above.